Setting up the build system

In the Project Editor

- In the Project Tree of the Project Editor, choose Context menu > Select From All Projects to checkmark all projects.
- Choose Project > Attributes of Checkmarked Projects....
The Group Project Attributes dialog appears. In this dialog, you can look at and modify the project attributes of multiple projects. For a description of the dialog, please see the Reference Guide.

In the Group Project Attributes dialog

Setting up Make Support for complexlib.shared

Highlight complexlib in the Project List.
Under the Build Options node, select Project Targets.
In the Library field of the of the Ansi C/C++ tab, enter

complexlib.a . This will be the name of the library built in this project.
Under the Build Options node, select Build Structure.
In the Build Structure view, choose Passed to Superproject drop-down > Library.
The project's library is exported to complex.shared and is used to build the Complex executable.
Setting up Make Support for iolib.shared

Highlight iolib in the Project List.
In the Build Structure view, choose Passed to Superproject drop-down > Object Files + Received.
The project's object file (

iolib.o ) is exported to complex.shared .
Setting up Make Support for complex.shared

Highlight complex in the Project List.
Under the Build Options node, select Project Targets.
In the Executable field of the Ansi C/C++ tab, enter

complex . This will be the name of the project's executable.
On Unix only, enter -lstdc++ in the +Libraries Linked field (below the Executable field).
Under the Build Options node, select Build Structure.
In the Build Structure view, press the Generate button next to the Recursive Make Dir(s) field.
The executable is built using recursive Make rules. By pressing the Generate button, SNiFF+ generates the order of subprojects in which Make is executed.
Generating the include paths for all projects

Under the Build Options node, select Directives.
Select the checkbox to the right of the Generate button.
Press the Set for All button to generate the include paths for all projects in the Project List.
Press Ok to apply the changes to the project attributes.
The icons in the Project Tree of the Project Editor warn you that the projects have been modified.
A dialog appears asking you to update Makefiles. We will do this later so press No.

In the Launch Pad
To save the changes made to complex.shared and its subprojects:

Select

complex.shared in the Project List.
Choose Project > Save Project complex.shared.
In the Alert dialog that appears, press the Save All button.
What's next
You may think that the next step is to build the project's executable in the SSWE. It isn't. In SNiFF+'s working environments concept, SSWEs contain only shared source code, and SOWEs contain the objects and targets based on this code.
During project setup, you created a SNiFF+ project in the directory that contains your team's shared source code, i.e., in the SSWE. Once the project has been created, the only time you open it in the SSWE is to update it. For any real development work, open the project in a PWE.
So, the next step is to check in the project (its Project Description File) and its source files into the Repository. When the process is over, all the files in the SSWE will be read-only.
Then, you can open the project in the SOWE and build the executable in it. For details, see First Build in the SOWE.